草庐IT

Java while 循环和线程!

全部标签

javascript - TypeScript setTimeout 循环传递此错误

尝试在TypeScript中创建一个计时器循环:timeout(){setTimeout(function(){console.log('Test');this.timeout();},1000/60);}但在第一个循环正常工作后,我得到了这个错误:“未捕获的类型错误:this.timeout不是一个函数”。似乎this变量在初始循环后不存在。有什么想法吗? 最佳答案 因为您的this没有引用该对象。每个函数都有它自己的this。所以你的this是由setTimeout()中的匿名函数定义的。为了使您的程序正常运行,您需要在超时之前

javascript - 使用 requireJs 的模块中的循环依赖

阅读requireJs文档,为了修复循环依赖,建议使用exports为模块创建一个空对象,该对象可立即供其他模块引用。我试过这段代码,但它似乎不起作用。怎么了?附言:阅读评论以查看输出,特别是setTimeout调用中的B模块。//Amoduledefine(['b'],function(b){console.log('B:',b);//B,ObjectvarA={boo:1};returnA;});//Bmoduledefine(['a','exports'],function(a,exports){console.log('A:',a);//A,undefined(asIwasex

javascript - jQuery 动画延迟问题与步骤的自排队循环

我有一个timeline定义,其中列出了选择器以及应用于该对象的延迟和动画列表。您可以指定循环特定对象的步骤。下面是用于对动画进行排队的函数:functionanimateWithQueue(e,obj){if($.queue(e[0]).length==0){e.queue(functiondoNext(next){$.each(obj.steps,function(i,step){e.delay(step.pause).animate(step.anim,step.options);});if(obj.loop){e.queue(doNext);}next();});}}​这里是时

javascript - 使用 IFRAME 是否可以实现 javascript 多线程

我目前正在考虑使用IFRAME来实现一个非常简单的多线程引擎。然而,我的初步结果表明,在线程中运行比在单个线程中运行要慢。我的测试是:单线程varstart=newDate().getTime();for(vari=0;i多线程varstart=newDate().getTime();//Inthread1for(vari=0;i可以看出,我只是在IFRAME之间分配工作负载(请注意,上面的代码只是为了更好地描述我正在做的事情,它不是工作代码)。所以我在想即使使用FRAMEsFireFox仍然只有一个JS引擎?这个假设是否正确?(使我的研究变得愚蠢),其他浏览器是否不同?快速谷歌一下,

javascript - 从多个 javascript 线程访问 IndexedDB

概述:我试图通过从网页和网络worker访问IndexedDB来避免竞争条件。设置:在用户使用网站时将项目保存到本地IndexedDB的网页。每当用户将数据保存到本地数据库时,记录都会被标记为“未发送”。Web-worker后台线程从IndexedDB中提取数据,将其发送到服务器,一旦服务器接收到数据,就将IndexedDB中的数据标记为“已发送”。问题:由于对IndexedDB的访问是异步的,我不能保证用户不会在web-worker将记录发送到服务器的同时更新记录。时间线如下图:Web-worker从数据库中获取数据并发送给服务器在传输过程中,用户更新将其保存到数据库中的数据。网络w

Delphi TWebBrowser 中的 Javascript,关闭线程

我正尝试在Delphi中构建一个允许用户使用Googlemap的系统。一切正常,但我注意到每次创建新的TWebBrowser对象并加载处理Googlemap的javascript时,都会生成许多新线程。我的问题是,即使网络浏览器被销毁(并且肯定被销毁),创建的线程仍然存在。我正在设计这个程序,使其运行时间长,并且谷歌地图的打开和关闭发生多次,因此,一段时间后,生成了如此多的线程并且没有终止,以至于程序速度急剧下降。有什么方法可以自己销毁这些线程,还是我做错了什么导致线程持续存在?我的程序基于以下代码:constHTMLStr:AnsiString=''+''+''+''+''+''+'

javascript - 复杂的连续滚动循环

我的代码类似于:结果总数取决于ajax查询,我一次性动态插入所有结果。div.main始终可见(固定高度)并且div.details在div.main下方“展开/折叠”,当用户点击resultdiv。详细信息div高度可以变化。如果#resultsscrollHeight大于#right-columnheight,我想创建一个连续滚动循环。在这种情况下,滚动到#result50将显示#result1,滚动到#result1之前将显示#result50。我不能.append()第一个child到底部,因为在某些情况下,可以在顶部和底部看到result的一部分专栏。我无法复制result除

javascript - (Angular 2+)在 *ngFor 中使用 ng-content,无法访问循环变量

如何嵌入/投影到循环内的插槽中,并使投影内容能够访问循环变量?假设我有一个包含以下内容的基本组件{{data.title}}和一个使用嵌入槽“slot”的子组件{{data.category}}{{data.number}}我想要生成的HTML是{{data.title}}{{data.category}}{{data.number}}但实际发生的是子组件中没有定义“数据”,这是有道理的。有什么方法可以让它像这样工作吗? 最佳答案 使用TemplateRef可以在模板级别以声明方式声明在两个组件之间起作用的模板变量。以下解决方案与您

javascript - 为什么这些 Javascript for 循环在 Firefox 上比在 Chrome/Safari 上慢得多?

我在摆弄基准站点jfprefs并在http://jsperf.com/prefix-or-postfix-increment/9创建了我自己的基准.基准测试是Javascriptfor循环的变体,使用前缀和后缀增量器以及不使用就地增量器的Crockfordjslint风格。for(varindex=0,len=data.length;index从几次基准测试中获得数据后,我注意到Firefox平均每秒执行15次操作,而Chrome大约为300次。我认为JaegerMonkey和v8在速度方面相当相似?我的基准测试是否存在某种缺陷,Firefox是否在此处进行某种节流,或者Javascr

javascript - 如何处理循环引用的类对象?

我在想一个简单的问题。我给了一个类,例如ModelclassModel{constructor(parameters={}){this.id=parameters.id;}}如您所见,我们可以创建新的Model对象,例如:letmodel=newModel()。更复杂的示例如下所示://wehavesomedatagivenfromAPImaybe?letparameters={id:1};letmodel=newModel(parameters);现在我们正处于我开始徘徊的地步如果具有给定id的对象已经存在怎么办?问题是我应该使用什么模式来实例化具有给定id的对象一次?让我们更进一步